package com.zkthink.ceres.member.dto;

import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.util.List;

/**
 * @Author Xiaoyan
 * @create 2021/12/1 18:17
 */
@Data
@NoArgsConstructor
public class FindMemberByConditionQueryDto {

    /**
     * 性别
     */
    @ApiModelProperty("性别")
    private String sex;

    /**
     * 年龄是否不限
     */
    @ApiModelProperty("年龄是否不限")
    private Boolean isAge = true;

    /**
     * 年龄区间
     */
    @ApiModelProperty("年龄区间")
    private List<AgeDto> ageDtoList;

    @Data
    static class AgeDto {
        /**
         * 最大年龄
         */
        @ApiModelProperty("最大年龄")
        private Integer ageMin;

        /**
         * 最小年龄
         */
        @ApiModelProperty("最小年龄")
        private Integer ageMax;
    }

    /**
     * 省CODE
     */
    @ApiModelProperty("省CODE")
    private String provinceCode;

    /**
     * 市CODE
     */
    @ApiModelProperty("市CODE")
    private String cityCode;

    /**
     * 区CODE
     */
    @ApiModelProperty("区CODE")
    private String areaCode;

    /**
     * 婚姻状况是否不限
     */
    @ApiModelProperty("婚姻状况是否不限")
    private Boolean isMaritalStatus = true;

    /**
     * 婚姻状态
     */
    private String[] maritalStatus;

    @ApiModelProperty("婚姻状态")
    private String maritalStatuss;
    /**
     * 学历是否不限
     */
    @ApiModelProperty("学历是否不限")
    private Boolean isEducation = true;

    private String[] education;

    @ApiModelProperty("学历")
    private String educations;
    /**
     * 职业是否不限
     */
    @ApiModelProperty("职业是否不限")
    private Boolean isOccupation = true;

    private String[] occupation;

    @ApiModelProperty("职业")
    private String occupations;

    /**
     * 房产是否不限
     */
    @ApiModelProperty("房产是否不限")
    private Boolean isHouseProperty = true;

    private String[] houseProperty;

    @ApiModelProperty("房产")
    private String housePropertys;

    /**
     * 车辆类型是否不限
     */
    @ApiModelProperty("车辆类型是否不限")
    private Boolean isVehicleType = true;

    private String[] vehicleType;

    @ApiModelProperty("车辆类型")
    private String vehicleTypes;

    /**
     * 车辆价值是否不限
     */
    @ApiModelProperty("车辆价值是否不限")
    private Boolean isVehicleValue = true;

    @ApiModelProperty("车辆价值")
    private List<VehicleValue> vehicleValues;

    @Data
    static class VehicleValue {
        @ApiModelProperty("车辆价值最低")
        private Integer vehicleValueMin;

        @ApiModelProperty("车辆价值最高")
        private Integer vehicleValueMax;
    }

    /**
     * 身高是否不限
     */
    @ApiModelProperty("身高是否不限")
    private Boolean isHeight = true;
    /**
     * 身高
     */
    private List<Height> height;

    @ApiModelProperty("身高")
    private String heights;

    @Data
    static class Height {
        @ApiModelProperty("身高最低")
        private Integer heightMin;

        @ApiModelProperty("身高最高")
        private Integer heightMax;
    }

    /**
     * 爱好是否不限
     */
    @ApiModelProperty("爱好是否不限")
    private Boolean isHobby = true;

    /**
     * 爱好
     */
    private String[] hobby;

    @ApiModelProperty("爱好")
    private String hobbys;
    /**
     * 性格是否不限
     */
    @ApiModelProperty("性格是否不限")
    private Boolean isCharacter = true;

    /**
     * 性格
     */
    private String[] character;
    /**
     * 性格
     */
    @ApiModelProperty("性格")
    private String characters;

    private Long userId;


}
